package br.com.edumobi.adapters;

import android.graphics.Color;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

import java.util.List;

import br.com.edumobi.R;
import br.com.edumobi.dados.modelos.Alternativa;

public class ListaAlternativasAdapter extends BaseAdapter {

    private List<Alternativa> alternativas;
    private Long idAlternativaSelecionada;
    public static final String[] letras = {"a", "b", "c", "d", "e", "f", "g"};

    public ListaAlternativasAdapter(List<Alternativa> alternativas) {
        this.alternativas = alternativas;
    }

    public ListaAlternativasAdapter(List<Alternativa> alternativas, Long idAlternativaSelecionada) {
        this.alternativas = alternativas;
        this.idAlternativaSelecionada = idAlternativaSelecionada;
    }

    @Override
    public int getCount() {
        return alternativas.size();
    }

    @Override
    public Object getItem(int position) {
        return alternativas.get(position);
    }

    @Override
    public long getItemId(int position) {
        return alternativas.get(position).id;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        Alternativa alternativa = alternativas.get(position);

        ViewHolder holder;

        if (convertView == null) {
            convertView = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_lista_alternativas, null);

            holder = new ViewHolder();

            holder.textViewItemListaAlternativasLetra = (TextView) convertView.findViewById(R.id.textViewItemListaAlternativasLetra);
            holder.textViewItemListaAlternativasAlternativa = (TextView) convertView.findViewById(R.id.textViewItemListaAlternativasAlternativa);

            convertView.setTag(holder);
        } else {
            holder = (ViewHolder) convertView.getTag();
        }

        holder.textViewItemListaAlternativasLetra.setText(letras[position]);
        holder.textViewItemListaAlternativasAlternativa.setText(alternativa.alternativa);

        if (idAlternativaSelecionada != null && idAlternativaSelecionada.equals(alternativa.id)) {
            holder.textViewItemListaAlternativasLetra.setTextColor(Color.parseColor("#ff0a8cbf"));
            holder.textViewItemListaAlternativasAlternativa.setTextColor(Color.parseColor("#ff0a8cbf"));
        }

        return convertView;
    }

    private class ViewHolder {
        TextView textViewItemListaAlternativasLetra;
        TextView textViewItemListaAlternativasAlternativa;
    }
}